<!DOCTYPE html><html lang="en" style="font-size:16px"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="./static/favicon.png"><meta name="description" content="LittleJS is a lightweight HTML5 game engine with fast WebGL rendering, physics, particles, sound, and more!"><meta name="keywords" content="javascript, game engine, html5, webgl, 2d, game development, indie games"><meta name="author" content="Frank Force"><meta property="og:title" content="LittleJS - The Tiny JavaScript Game Engine"><meta property="og:description" content="Lightweight HTML5 game engine with WebGL rendering, physics, and sound"><meta property="og:type" content="website"><title>Namespace: Math</title><!--[if lt IE 9]>
      <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]--><script src="scripts/third-party/hljs.js" defer="defer"></script><script src="scripts/third-party/hljs-line-num.js" defer="defer"></script><script src="scripts/third-party/popper.js" defer="defer"></script><script src="scripts/third-party/tippy.js" defer="defer"></script><script src="scripts/third-party/tocbot.min.js"></script><script>var baseURL="/",locationPathname="";baseURL=(baseURL=(baseURL="https://killedbyapixel.github.io/LittleJS/docs/").replace(/https?:\/\//i,"")).substr(baseURL.indexOf("/"))</script><link rel="stylesheet" href="styles/clean-jsdoc-theme.min.css"><svg aria-hidden="true" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="display:none"><defs><symbol id="copy-icon" viewbox="0 0 488.3 488.3"><g><path d="M314.25,85.4h-227c-21.3,0-38.6,17.3-38.6,38.6v325.7c0,21.3,17.3,38.6,38.6,38.6h227c21.3,0,38.6-17.3,38.6-38.6V124    C352.75,102.7,335.45,85.4,314.25,85.4z M325.75,449.6c0,6.4-5.2,11.6-11.6,11.6h-227c-6.4,0-11.6-5.2-11.6-11.6V124    c0-6.4,5.2-11.6,11.6-11.6h227c6.4,0,11.6,5.2,11.6,11.6V449.6z"/><path d="M401.05,0h-227c-21.3,0-38.6,17.3-38.6,38.6c0,7.5,6,13.5,13.5,13.5s13.5-6,13.5-13.5c0-6.4,5.2-11.6,11.6-11.6h227    c6.4,0,11.6,5.2,11.6,11.6v325.7c0,6.4-5.2,11.6-11.6,11.6c-7.5,0-13.5,6-13.5,13.5s6,13.5,13.5,13.5c21.3,0,38.6-17.3,38.6-38.6    V38.6C439.65,17.3,422.35,0,401.05,0z"/></g></symbol><symbol id="search-icon" viewBox="0 0 512 512"><g><g><path d="M225.474,0C101.151,0,0,101.151,0,225.474c0,124.33,101.151,225.474,225.474,225.474    c124.33,0,225.474-101.144,225.474-225.474C450.948,101.151,349.804,0,225.474,0z M225.474,409.323    c-101.373,0-183.848-82.475-183.848-183.848S124.101,41.626,225.474,41.626s183.848,82.475,183.848,183.848    S326.847,409.323,225.474,409.323z"/></g></g><g><g><path d="M505.902,476.472L386.574,357.144c-8.131-8.131-21.299-8.131-29.43,0c-8.131,8.124-8.131,21.306,0,29.43l119.328,119.328    c4.065,4.065,9.387,6.098,14.715,6.098c5.321,0,10.649-2.033,14.715-6.098C514.033,497.778,514.033,484.596,505.902,476.472z"/></g></g></symbol><symbol id="font-size-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M11.246 15H4.754l-2 5H.6L7 4h2l6.4 16h-2.154l-2-5zm-.8-2L8 6.885 5.554 13h4.892zM21 12.535V12h2v8h-2v-.535a4 4 0 1 1 0-6.93zM19 18a2 2 0 1 0 0-4 2 2 0 0 0 0 4z"/></symbol><symbol id="add-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M11 11V5h2v6h6v2h-6v6h-2v-6H5v-2z"/></symbol><symbol id="minus-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M5 11h14v2H5z"/></symbol><symbol id="dark-theme-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M10 7a7 7 0 0 0 12 4.9v.1c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2h.1A6.979 6.979 0 0 0 10 7zm-6 5a8 8 0 0 0 15.062 3.762A9 9 0 0 1 8.238 4.938 7.999 7.999 0 0 0 4 12z"/></symbol><symbol id="light-theme-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 18a6 6 0 1 1 0-12 6 6 0 0 1 0 12zm0-2a4 4 0 1 0 0-8 4 4 0 0 0 0 8zM11 1h2v3h-2V1zm0 19h2v3h-2v-3zM3.515 4.929l1.414-1.414L7.05 5.636 5.636 7.05 3.515 4.93zM16.95 18.364l1.414-1.414 2.121 2.121-1.414 1.414-2.121-2.121zm2.121-14.85l1.414 1.415-2.121 2.121-1.414-1.414 2.121-2.121zM5.636 16.95l1.414 1.414-2.121 2.121-1.414-1.414 2.121-2.121zM23 11v2h-3v-2h3zM4 11v2H1v-2h3z"/></symbol><symbol id="reset-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M18.537 19.567A9.961 9.961 0 0 1 12 22C6.477 22 2 17.523 2 12S6.477 2 12 2s10 4.477 10 10c0 2.136-.67 4.116-1.81 5.74L17 12h3a8 8 0 1 0-2.46 5.772l.997 1.795z"/></symbol><symbol id="down-icon" viewBox="0 0 16 16"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.7803 6.21967C13.0732 6.51256 13.0732 6.98744 12.7803 7.28033L8.53033 11.5303C8.23744 11.8232 7.76256 11.8232 7.46967 11.5303L3.21967 7.28033C2.92678 6.98744 2.92678 6.51256 3.21967 6.21967C3.51256 5.92678 3.98744 5.92678 4.28033 6.21967L8 9.93934L11.7197 6.21967C12.0126 5.92678 12.4874 5.92678 12.7803 6.21967Z"></path></symbol><symbol id="codepen-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M16.5 13.202L13 15.535v3.596L19.197 15 16.5 13.202zM14.697 12L12 10.202 9.303 12 12 13.798 14.697 12zM20 10.869L18.303 12 20 13.131V10.87zM19.197 9L13 4.869v3.596l3.5 2.333L19.197 9zM7.5 10.798L11 8.465V4.869L4.803 9 7.5 10.798zM4.803 15L11 19.131v-3.596l-3.5-2.333L4.803 15zM4 13.131L5.697 12 4 10.869v2.262zM2 9a1 1 0 0 1 .445-.832l9-6a1 1 0 0 1 1.11 0l9 6A1 1 0 0 1 22 9v6a1 1 0 0 1-.445.832l-9 6a1 1 0 0 1-1.11 0l-9-6A1 1 0 0 1 2 15V9z"/></symbol><symbol id="close-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 10.586l4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.414 1.414-4.95-4.95-4.95 4.95-1.414-1.414 4.95-4.95-4.95-4.95L7.05 5.636z"/></symbol><symbol id="menu-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M3 4h18v2H3V4zm0 7h18v2H3v-2zm0 7h18v2H3v-2z"/></symbol></defs></svg></head><body data-theme="dark"><div class="sidebar-container"><div class="sidebar" id="sidebar"><a href="/" class="sidebar-title sidebar-title-anchor">LittleJS - The Tiny JavaScript Game Engine That Can!</a><div class="sidebar-items-container"><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-classes"><div>Classes</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="Audio.Sound.html">Sound</a></div><div class="sidebar-section-children"><a href="Audio.SoundInstance.html">SoundInstance</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dDistanceJoint.html">Box2dDistanceJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dFrictionJoint.html">Box2dFrictionJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dGearJoint.html">Box2dGearJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dJoint.html">Box2dJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dKiematicObject.html">Box2dKiematicObject</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dMotorJoint.html">Box2dMotorJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dObject.html">Box2dObject</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dPinJoint.html">Box2dPinJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dPlugin.html">Box2dPlugin</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dPrismaticJoint.html">Box2dPrismaticJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dPulleyJoint.html">Box2dPulleyJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dRevoluteJoint.html">Box2dRevoluteJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dRopeJoint.html">Box2dRopeJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dStaticObject.html">Box2dStaticObject</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dTargetJoint.html">Box2dTargetJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dWeldJoint.html">Box2dWeldJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dWheelJoint.html">Box2dWheelJoint</a></div><div class="sidebar-section-children"><a href="Box2dRaycastResult.html">Box2dRaycastResult</a></div><div class="sidebar-section-children"><a href="Draw.FontImage.html">FontImage</a></div><div class="sidebar-section-children"><a href="Draw.TextureInfo.html">TextureInfo</a></div><div class="sidebar-section-children"><a href="Draw.TileInfo.html">TileInfo</a></div><div class="sidebar-section-children"><a href="Engine.Color.html">Color</a></div><div class="sidebar-section-children"><a href="Engine.EngineObject.html">EngineObject</a></div><div class="sidebar-section-children"><a href="Engine.Particle.html">Particle</a></div><div class="sidebar-section-children"><a href="Engine.ParticleEmitter.html">ParticleEmitter</a></div><div class="sidebar-section-children"><a href="Engine.RandomGenerator.html">RandomGenerator</a></div><div class="sidebar-section-children"><a href="Engine.Timer.html">Timer</a></div><div class="sidebar-section-children"><a href="Engine.Vector2.html">Vector2</a></div><div class="sidebar-section-children"><a href="Medals.Medal.html">Medal</a></div><div class="sidebar-section-children"><a href="Newgrounds.NewgroundsMedal.html">NewgroundsMedal</a></div><div class="sidebar-section-children"><a href="Newgrounds.NewgroundsPlugin.html">NewgroundsPlugin</a></div><div class="sidebar-section-children"><a href="PostProcess.PostProcessPlugin.html">PostProcessPlugin</a></div><div class="sidebar-section-children"><a href="TileLayers.Box2dTileLayer.html">Box2dTileLayer</a></div><div class="sidebar-section-children"><a href="TileLayers.CanvasLayer.html">CanvasLayer</a></div><div class="sidebar-section-children"><a href="TileLayers.TileCollisionLayer.html">TileCollisionLayer</a></div><div class="sidebar-section-children"><a href="TileLayers.TileLayer.html">TileLayer</a></div><div class="sidebar-section-children"><a href="TileLayers.TileLayerData.html">TileLayerData</a></div><div class="sidebar-section-children"><a href="UISystem.UIButton.html">UIButton</a></div><div class="sidebar-section-children"><a href="UISystem.UICheckbox.html">UICheckbox</a></div><div class="sidebar-section-children"><a href="UISystem.UIObject.html">UIObject</a></div><div class="sidebar-section-children"><a href="UISystem.UIScrollbar.html">UIScrollbar</a></div><div class="sidebar-section-children"><a href="UISystem.UISystemPlugin.html">UISystemPlugin</a></div><div class="sidebar-section-children"><a href="UISystem.UIText.html">UIText</a></div><div class="sidebar-section-children"><a href="UISystem.UITile.html">UITile</a></div><div class="sidebar-section-children"><a href="UISystem.UIVideo.html">UIVideo</a></div><div class="sidebar-section-children"><a href="ZzFXM.ZzFXMusic.html">ZzFXMusic</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-namespaces"><div>Namespaces</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="Audio.html">Audio</a></div><div class="sidebar-section-children"><a href="Box2D.html">Box2D</a></div><div class="sidebar-section-children"><a href="Debug.html">Debug</a></div><div class="sidebar-section-children"><a href="Draw.html">Draw</a></div><div class="sidebar-section-children"><a href="DrawUtilities.html">DrawUtilities</a></div><div class="sidebar-section-children"><a href="Engine.html">Engine</a></div><div class="sidebar-section-children"><a href="Input.html">Input</a></div><div class="sidebar-section-children"><a href="Math.html">Math</a></div><div class="sidebar-section-children"><a href="Medals.html">Medals</a></div><div class="sidebar-section-children"><a href="Newgrounds.html">Newgrounds</a></div><div class="sidebar-section-children"><a href="PostProcess.html">PostProcess</a></div><div class="sidebar-section-children"><a href="Random.html">Random</a></div><div class="sidebar-section-children"><a href="Settings.html">Settings</a></div><div class="sidebar-section-children"><a href="TileLayers.html">TileLayers</a></div><div class="sidebar-section-children"><a href="UISystem.html">UISystem</a></div><div class="sidebar-section-children"><a href="Utilities.html">Utilities</a></div><div class="sidebar-section-children"><a href="WebGL.html">WebGL</a></div><div class="sidebar-section-children"><a href="ZzFXM.html">ZzFXM</a></div></div></div></div></div><div class="navbar-container" id="VuAckcnZhf"><nav class="navbar"><div class="navbar-left-items"><div class="navbar-item"><a id="" href="https://github.com/KilledByAPixel/LittleJS" target="_blank">GitHub</a></div><div class="navbar-item"><a id="" href="https://killedbyapixel.github.io/LittleJS/examples/" target="_blank">Examples</a></div><div class="navbar-item"><a id="" href="https://github.com/KilledByAPixel/LittleJS/blob/main/FAQ.md" target="_blank">FAQ</a></div></div><div class="navbar-right-items"><div class="navbar-right-item"><button class="icon-button search-button" aria-label="open-search"><svg><use xlink:href="#search-icon"></use></svg></button></div><div class="navbar-right-item"><button class="icon-button theme-toggle" aria-label="toggle-theme"><svg><use class="theme-svg-use" xlink:href="#light-theme-icon"></use></svg></button></div><div class="navbar-right-item"><button class="icon-button font-size" aria-label="change-font-size"><svg><use xlink:href="#font-size-icon"></use></svg></button></div></div><nav></nav></nav></div><div class="toc-container"><div class="toc-content"><span class="bold">On this page</span><div id="eed4d2a0bfd64539bb9df78095dec881"></div></div></div><div class="body-wrapper"><div class="main-content"><div class="main-wrapper"><section><header><h1 id="Math-title" class="has-anchor">Math</h1></header><article><div class="container-overview"><div class="description"><p>LittleJS Math Classes and Functions</p><ul><li>General purpose math library</li><li>RandomGenerator - seeded random number generator</li><li>Vector2 - fast, simple, easy 2D vector class</li><li>Color - holds a rgba color with math functions</li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1">line 1</a></li></ul></dd></div></dl></div><h2 id="members" class="subsection-title has-anchor">Members</h2><h3 class="name has-anchor" id=".BLACK"><span class="type-signature">(static, constant) </span>BLACK<span class="type-signature"> :Color</span></h3><div class="description"><p>Color - Black #000000</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Color</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1062">line 1062</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".BLUE"><span class="type-signature">(static, constant) </span>BLUE<span class="type-signature"> :Color</span></h3><div class="description"><p>Color - Blue #0000ff</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Color</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1102">line 1102</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".CLEAR_BLACK"><span class="type-signature">(static, constant) </span>CLEAR_BLACK<span class="type-signature"> :Color</span></h3><div class="description"><p>Color - Clear Black #000000 with 0 alpha</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Color</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1067">line 1067</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".CLEAR_WHITE"><span class="type-signature">(static, constant) </span>CLEAR_WHITE<span class="type-signature"> :Color</span></h3><div class="description"><p>Color - Clear White #757474ff with 0 alpha</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Color</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1057">line 1057</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".CYAN"><span class="type-signature">(static, constant) </span>CYAN<span class="type-signature"> :Color</span></h3><div class="description"><p>Color - Cyan #00ffff</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Color</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1097">line 1097</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".GRAY"><span class="type-signature">(static, constant) </span>GRAY<span class="type-signature"> :Color</span></h3><div class="description"><p>Color - Gray #808080</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Color</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1072">line 1072</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".GREEN"><span class="type-signature">(static, constant) </span>GREEN<span class="type-signature"> :Color</span></h3><div class="description"><p>Color - Green #00ff00</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Color</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1092">line 1092</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".MAGENTA"><span class="type-signature">(static, constant) </span>MAGENTA<span class="type-signature"> :Color</span></h3><div class="description"><p>Color - Magenta #ff00ff</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Color</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1112">line 1112</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".ORANGE"><span class="type-signature">(static, constant) </span>ORANGE<span class="type-signature"> :Color</span></h3><div class="description"><p>Color - Orange #ff8000</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Color</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1082">line 1082</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".PI"><span class="type-signature">(static, constant) </span>PI<span class="type-signature"> :number</span></h3><div class="description"><p>The value of PI</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">number</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-default bold">Default Value</dt><dd class="tag-default"><ul><li data-skip-pre-process="true">Math.PI</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line16">line 16</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".PURPLE"><span class="type-signature">(static, constant) </span>PURPLE<span class="type-signature"> :Color</span></h3><div class="description"><p>Color - Purple #8000ff</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Color</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1107">line 1107</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".RED"><span class="type-signature">(static, constant) </span>RED<span class="type-signature"> :Color</span></h3><div class="description"><p>Color - Red #ff0000</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Color</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1077">line 1077</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".WHITE"><span class="type-signature">(static, constant) </span>WHITE<span class="type-signature"> :Color</span></h3><div class="description"><p>Color - White #ffffff</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Color</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1052">line 1052</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".YELLOW"><span class="type-signature">(static, constant) </span>YELLOW<span class="type-signature"> :Color</span></h3><div class="description"><p>Color - Yellow #ffff00</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Color</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line1087">line 1087</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".abs"><span class="type-signature">(static, constant) </span>abs<span class="type-signature"></span></h3><div class="description"><p>Returns absolute value of value passed in</p></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line22">line 22</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".atan2"><span class="type-signature">(static, constant) </span>atan2<span class="type-signature"></span></h3><div class="description"><p>Returns atan2 of values passed in</p></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line95">line 95</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".ceil"><span class="type-signature">(static, constant) </span>ceil<span class="type-signature"></span></h3><div class="description"><p>Returns ceiled value of value passed in</p></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line34">line 34</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".cos"><span class="type-signature">(static, constant) </span>cos<span class="type-signature"></span></h3><div class="description"><p>Returns cos of value passed in</p></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line82">line 82</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".floor"><span class="type-signature">(static, constant) </span>floor<span class="type-signature"></span></h3><div class="description"><p>Returns floored value of value passed in</p></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line28">line 28</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".hypot"><span class="type-signature">(static, constant) </span>hypot<span class="type-signature"></span></h3><div class="description"><p>Returns hypotenuse of values passed in</p></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line64">line 64</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".log2"><span class="type-signature">(static, constant) </span>log2<span class="type-signature"></span></h3><div class="description"><p>Returns log2 of value passed in</p></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line70">line 70</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".max"><span class="type-signature">(static, constant) </span>max<span class="type-signature"></span></h3><div class="description"><p>Returns highest value passed in</p></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line52">line 52</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".min"><span class="type-signature">(static, constant) </span>min<span class="type-signature"></span></h3><div class="description"><p>Returns lowest value passed in</p></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line46">line 46</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".round"><span class="type-signature">(static, constant) </span>round<span class="type-signature"></span></h3><div class="description"><p>Returns rounded value passed in</p></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line40">line 40</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".sign"><span class="type-signature">(static, constant) </span>sign<span class="type-signature"></span></h3><div class="description"><p>Returns the sign of value passed in</p></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line58">line 58</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".sin"><span class="type-signature">(static, constant) </span>sin<span class="type-signature"></span></h3><div class="description"><p>Returns sin of value passed in</p></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line76">line 76</a></li></ul></dd></div></dl><h3 class="name has-anchor" id=".tan"><span class="type-signature">(static, constant) </span>tan<span class="type-signature"></span></h3><div class="description"><p>Returns tan of value passed in</p></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line88">line 88</a></li></ul></dd></div></dl><h2 id="methods" class="subsection-title has-anchor">Methods</h2><h3 class="name has-anchor" id=".clamp"><span class="type-signature">(static) </span>clamp<span class="signature">(value, min<span class="signature-attributes">opt</span>, max<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {number}</span></h3><div class="description"><p>Clamps the value between max and min</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th>Default</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>value</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes"></td><td class="default"></td><td class="description last"></td></tr><tr><td class="name"><code>min</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">0</td><td class="description last"></td></tr><tr><td class="name"><code>max</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">1</td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line110">line 110</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">number</span></dd></dl></div><h3 class="name has-anchor" id=".distanceAngle"><span class="type-signature">(static) </span>distanceAngle<span class="signature">(angleA, angleB)</span><span class="type-signature"> &rarr; {number}</span></h3><div class="description"><p>Returns signed wrapped distance between the two angles passed in</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>angleA</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr><tr><td class="name"><code>angleB</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line166">line 166</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">number</span></dd></dl></div><h3 class="name has-anchor" id=".distanceWrap"><span class="type-signature">(static) </span>distanceWrap<span class="signature">(valueA, valueB, wrapSize<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {number}</span></h3><div class="description"><p>Returns signed wrapped distance between the two values passed in</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th>Default</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>valueA</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes"></td><td class="default"></td><td class="description last"></td></tr><tr><td class="name"><code>valueB</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes"></td><td class="default"></td><td class="description last"></td></tr><tr><td class="name"><code>wrapSize</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">1</td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line148">line 148</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">number</span></dd></dl></div><h3 class="name has-anchor" id=".hsl"><span class="type-signature">(static) </span>hsl<span class="signature">(h<span class="signature-attributes">opt</span>, s<span class="signature-attributes">opt</span>, l<span class="signature-attributes">opt</span>, a<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {Color}</span></h3><div class="description"><p>Create a color object with HSLA values, white by default</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th>Default</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>h</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">0</td><td class="description last"><p>hue</p></td></tr><tr><td class="name"><code>s</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">0</td><td class="description last"><p>saturation</p></td></tr><tr><td class="name"><code>l</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">1</td><td class="description last"><p>lightness</p></td></tr><tr><td class="name"><code>a</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">1</td><td class="description last"><p>alpha</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line807">line 807</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">Color</span></dd></dl></div><h3 class="name has-anchor" id=".isArray"><span class="type-signature">(static) </span>isArray<span class="signature">(a)</span><span class="type-signature"> &rarr; {boolean}</span></h3><div class="description"><p>Check if object is an array</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>a</code></td><td class="type"><span class="param-type">any</span></td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line281">line 281</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">boolean</span></dd></dl></div><h3 class="name has-anchor" id=".isColor"><span class="type-signature">(static) </span>isColor<span class="signature">(c)</span><span class="type-signature"> &rarr; {boolean}</span></h3><div class="description"><p>Check if object is a valid Color</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>c</code></td><td class="type"><span class="param-type">any</span></td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line814">line 814</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">boolean</span></dd></dl></div><h3 class="name has-anchor" id=".isIntersecting"><span class="type-signature">(static) </span>isIntersecting<span class="signature">(start, end, pos, size)</span><span class="type-signature"> &rarr; {boolean}</span></h3><div class="description"><p>Returns true if a line segment is intersecting an axis aligned box</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>start</code></td><td class="type"><span class="param-type">Vector2</span></td><td class="description last"><p>Start of raycast</p></td></tr><tr><td class="name"><code>end</code></td><td class="type"><span class="param-type">Vector2</span></td><td class="description last"><p>End of raycast</p></td></tr><tr><td class="name"><code>pos</code></td><td class="type"><span class="param-type">Vector2</span></td><td class="description last"><p>Center of box</p></td></tr><tr><td class="name"><code>size</code></td><td class="type"><span class="param-type">Vector2</span></td><td class="description last"><p>Size of box</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line218">line 218</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><div class="param-desc"><ul><li>True if intersecting</li></ul></div><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">boolean</span></dd></dl></div><h3 class="name has-anchor" id=".isNumber"><span class="type-signature">(static) </span>isNumber<span class="signature">(n)</span><span class="type-signature"> &rarr; {boolean}</span></h3><div class="description"><p>Check if object is a valid number, not NaN or undefined, but it may be infinite</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>n</code></td><td class="type"><span class="param-type">any</span></td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line267">line 267</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">boolean</span></dd></dl></div><h3 class="name has-anchor" id=".isOverlapping"><span class="type-signature">(static) </span>isOverlapping<span class="signature">(posA, sizeA, posB, sizeB<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {boolean}</span></h3><div class="description"><p>Returns true if two axis aligned bounding boxes are overlapping this can be used for simple collision detection between objects</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th>Default</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>posA</code></td><td class="type"><span class="param-type">Vector2</span></td><td class="attributes"></td><td class="default"></td><td class="description last"><p>Center of box A</p></td></tr><tr><td class="name"><code>sizeA</code></td><td class="type"><span class="param-type">Vector2</span></td><td class="attributes"></td><td class="default"></td><td class="description last"><p>Size of box A</p></td></tr><tr><td class="name"><code>posB</code></td><td class="type"><span class="param-type">Vector2</span></td><td class="attributes"></td><td class="default"></td><td class="description last"><p>Center of box B</p></td></tr><tr><td class="name"><code>sizeB</code></td><td class="type"><span class="param-type">Vector2</span></td><td class="attributes">&lt;optional><br></td><td class="default">vec2()</td><td class="description last"><p>Size of box B, uses a point if undefined</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line202">line 202</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><div class="param-desc"><ul><li>True if overlapping</li></ul></div><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">boolean</span></dd></dl></div><h3 class="name has-anchor" id=".isPowerOfTwo"><span class="type-signature">(static) </span>isPowerOfTwo<span class="signature">(value)</span><span class="type-signature"> &rarr; {boolean}</span></h3><div class="description"><p>Checks if the value passed in is a power of two</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>value</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line186">line 186</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">boolean</span></dd></dl></div><h3 class="name has-anchor" id=".isString"><span class="type-signature">(static) </span>isString<span class="signature">(s)</span><span class="type-signature"> &rarr; {boolean}</span></h3><div class="description"><p>Check if object is a valid string or can be converted to one</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>s</code></td><td class="type"><span class="param-type">any</span></td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line274">line 274</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">boolean</span></dd></dl></div><h3 class="name has-anchor" id=".isVector2"><span class="type-signature">(static) </span>isVector2<span class="signature">(v)</span><span class="type-signature"> &rarr; {boolean}</span></h3><div class="description"><p>Check if object is a valid Vector2</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>v</code></td><td class="type"><span class="param-type">any</span></td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line550">line 550</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">boolean</span></dd></dl></div><h3 class="name has-anchor" id=".lerp"><span class="type-signature">(static) </span>lerp<span class="signature">(valueA, valueB, percent)</span><span class="type-signature"> &rarr; {number}</span></h3><div class="description"><p>Linearly interpolates between values passed in using percent</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>valueA</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr><tr><td class="name"><code>valueB</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr><tr><td class="name"><code>percent</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line127">line 127</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">number</span></dd></dl></div><h3 class="name has-anchor" id=".lerpAngle"><span class="type-signature">(static) </span>lerpAngle<span class="signature">(angleA, angleB, percent)</span><span class="type-signature"> &rarr; {number}</span></h3><div class="description"><p>Linearly interpolates between the angles passed in with wrapping</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>angleA</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr><tr><td class="name"><code>angleB</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr><tr><td class="name"><code>percent</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line174">line 174</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">number</span></dd></dl></div><h3 class="name has-anchor" id=".lerpWrap"><span class="type-signature">(static) </span>lerpWrap<span class="signature">(valueA, valueB, percent, wrapSize<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {number}</span></h3><div class="description"><p>Linearly interpolates between values passed in with wrapping</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th>Default</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>valueA</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes"></td><td class="default"></td><td class="description last"></td></tr><tr><td class="name"><code>valueB</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes"></td><td class="default"></td><td class="description last"></td></tr><tr><td class="name"><code>percent</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes"></td><td class="default"></td><td class="description last"></td></tr><tr><td class="name"><code>wrapSize</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">1</td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line158">line 158</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">number</span></dd></dl></div><h3 class="name has-anchor" id=".lineTest"><span class="type-signature">(static) </span>lineTest<span class="signature">(posStart, posEnd, testFunction, normal<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {Vector2|undefined}</span></h3><div class="description"><p>Casts a ray and returns position of the first collision found, or undefined if none are found</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>posStart</code></td><td class="type"><span class="param-type">Vector2</span></td><td class="attributes"></td><td class="description last"></td></tr><tr><td class="name"><code>posEnd</code></td><td class="type"><span class="param-type">Vector2</span></td><td class="attributes"></td><td class="description last"></td></tr><tr><td class="name"><code>testFunction</code></td><td class="type"><span class="param-type">LineTestFunction</span></td><td class="attributes"></td><td class="description last"><p>Check if colliding</p></td></tr><tr><td class="name"><code>normal</code></td><td class="type"><span class="param-type">Vector2</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>Optional vector to store the normal</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line297">line 297</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><div class="param-desc"><ul><li>Position of the collision or undefined if none found</li></ul></div><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">Vector2</span> |<wbr> <span class="param-type">undefined</span></dd></dl></div><h3 class="name has-anchor" id=".mod"><span class="type-signature">(static) </span>mod<span class="signature">(dividend, divisor<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {number}</span></h3><div class="description"><p>Returns first parm modulo the second param, but adjusted so negative numbers work as expected</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th>Default</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>dividend</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes"></td><td class="default"></td><td class="description last"></td></tr><tr><td class="name"><code>divisor</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">1</td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line102">line 102</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">number</span></dd></dl></div><h3 class="name has-anchor" id=".nearestPowerOfTwo"><span class="type-signature">(static) </span>nearestPowerOfTwo<span class="signature">(value)</span><span class="type-signature"> &rarr; {number}</span></h3><div class="description"><p>Returns the nearest power of two not less than the value</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>value</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line192">line 192</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">number</span></dd></dl></div><h3 class="name has-anchor" id=".percent"><span class="type-signature">(static) </span>percent<span class="signature">(value, valueA, valueB)</span><span class="type-signature"> &rarr; {number}</span></h3><div class="description"><p>Returns what percentage the value is between valueA and valueB</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>value</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr><tr><td class="name"><code>valueA</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr><tr><td class="name"><code>valueB</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line118">line 118</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">number</span></dd></dl></div><h3 class="name has-anchor" id=".percentLerp"><span class="type-signature">(static) </span>percentLerp<span class="signature">(value, percentA, percentB, lerpA, lerpB)</span><span class="type-signature"> &rarr; {number}</span></h3><div class="description"><p>Gets percent between percentA and percentB and linearly interpolates between lerpA and lerpB A shortcut for lerp(lerpA, lerpB, percent(value, percentA, percentB))</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>value</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr><tr><td class="name"><code>percentA</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr><tr><td class="name"><code>percentB</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr><tr><td class="name"><code>lerpA</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr><tr><td class="name"><code>lerpB</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line139">line 139</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">number</span></dd></dl></div><h3 class="name has-anchor" id=".rgb"><span class="type-signature">(static) </span>rgb<span class="signature">(r<span class="signature-attributes">opt</span>, g<span class="signature-attributes">opt</span>, b<span class="signature-attributes">opt</span>, a<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {Color}</span></h3><div class="description"><p>Create a color object with RGBA values, white by default</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th>Default</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>r</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">1</td><td class="description last"><p>red</p></td></tr><tr><td class="name"><code>g</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">1</td><td class="description last"><p>green</p></td></tr><tr><td class="name"><code>b</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">1</td><td class="description last"><p>blue</p></td></tr><tr><td class="name"><code>a</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">1</td><td class="description last"><p>alpha</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line797">line 797</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">Color</span></dd></dl></div><h3 class="name has-anchor" id=".smoothStep"><span class="type-signature">(static) </span>smoothStep<span class="signature">(percent)</span><span class="type-signature"> &rarr; {number}</span></h3><div class="description"><p>Applies smoothstep function to the percentage value</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>percent</code></td><td class="type"><span class="param-type">number</span></td><td class="description last"></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line180">line 180</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">number</span></dd></dl></div><h3 class="name has-anchor" id=".vec2"><span class="type-signature">(static) </span>vec2<span class="signature">(x<span class="signature-attributes">opt</span>, y<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {Vector2}</span></h3><div class="description"><p>Create a 2d vector, can take 1 or 2 scalar values</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th>Default</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>x</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">0</td><td class="description last"></td></tr><tr><td class="name"><code>y</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default"></td><td class="description last"><p>if y is undefined, x is used for both</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line543">line 543</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">Vector2</span></dd></dl></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Example</strong><div class="rel"><pre class="prettyprint"><code>let a = vec2(0, 1); // vector with coordinates (0, 1)a = vec2(5);        // set a to (5, 5)b = vec2();         // set b to (0, 0)</code></pre></div></div><h3 class="name has-anchor" id=".wave"><span class="type-signature">(static) </span>wave<span class="signature">(frequency<span class="signature-attributes">opt</span>, amplitude<span class="signature-attributes">opt</span>, t<span class="signature-attributes">opt</span>, offset<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {number}</span></h3><div class="description"><p>Returns an oscillating wave between 0 and amplitude with frequency of 1 Hz by default</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th>Default</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>frequency</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">1</td><td class="description last"><p>Frequency of the wave in Hz</p></td></tr><tr><td class="name"><code>amplitude</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">1</td><td class="description last"><p>Amplitude (max height) of the wave</p></td></tr><tr><td class="name"><code>t</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">time</td><td class="description last"><p>Value to use for time of the wave</p></td></tr><tr><td class="name"><code>offset</code></td><td class="type"><span class="param-type">number</span></td><td class="attributes">&lt;optional><br></td><td class="default">0</td><td class="description last"><p>Value to use for time offset of the wave</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="src_engineMath.js.html">src/engineMath.js</a>, <a href="src_engineMath.js.html#line259">line 259</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><div class="param-desc"><ul><li>Value waving between 0 and amplitude</li></ul></div><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">number</span></dd></dl></div></article></section><footer class="footer" id="PeOAagUepe"><div class="wrapper"><a href="https://github.com/KilledByAPixel/LittleJS">LittleJS - MIT License - Copyright 2021 Frank Force</a></div></footer></div></div></div><div class="search-container" id="PkfLWpAbet" style="display:none"><div class="wrapper" id="iCxFxjkHbP"><button class="icon-button search-close-button" id="VjLlGakifb" aria-label="close search"><svg><use xlink:href="#close-icon"></use></svg></button><div class="search-box-c"><svg><use xlink:href="#search-icon"></use></svg> <input type="text" id="vpcKVYIppa" class="search-input" placeholder="Search..." autofocus></div><div class="search-result-c" id="fWwVHRuDuN"><span class="search-result-c-text">Type anything to view search result</span></div></div></div><div class="mobile-menu-icon-container"><button class="icon-button" id="mobile-menu" data-isopen="false" aria-label="menu"><svg><use xlink:href="#menu-icon"></use></svg></button></div><div id="mobile-sidebar" class="mobile-sidebar-container"><div class="mobile-sidebar-wrapper"><a href="/" class="sidebar-title sidebar-title-anchor">LittleJS - The Tiny JavaScript Game Engine That Can!</a><div class="mobile-nav-links"><div class="navbar-item"><a id="" href="https://github.com/KilledByAPixel/LittleJS" target="_blank">GitHub</a></div><div class="navbar-item"><a id="" href="https://killedbyapixel.github.io/LittleJS/examples/" target="_blank">Examples</a></div><div class="navbar-item"><a id="" href="https://github.com/KilledByAPixel/LittleJS/blob/main/FAQ.md" target="_blank">FAQ</a></div></div><div class="mobile-sidebar-items-c"><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-classes"><div>Classes</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="Audio.Sound.html">Sound</a></div><div class="sidebar-section-children"><a href="Audio.SoundInstance.html">SoundInstance</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dDistanceJoint.html">Box2dDistanceJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dFrictionJoint.html">Box2dFrictionJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dGearJoint.html">Box2dGearJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dJoint.html">Box2dJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dKiematicObject.html">Box2dKiematicObject</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dMotorJoint.html">Box2dMotorJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dObject.html">Box2dObject</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dPinJoint.html">Box2dPinJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dPlugin.html">Box2dPlugin</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dPrismaticJoint.html">Box2dPrismaticJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dPulleyJoint.html">Box2dPulleyJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dRevoluteJoint.html">Box2dRevoluteJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dRopeJoint.html">Box2dRopeJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dStaticObject.html">Box2dStaticObject</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dTargetJoint.html">Box2dTargetJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dWeldJoint.html">Box2dWeldJoint</a></div><div class="sidebar-section-children"><a href="Box2D.Box2dWheelJoint.html">Box2dWheelJoint</a></div><div class="sidebar-section-children"><a href="Box2dRaycastResult.html">Box2dRaycastResult</a></div><div class="sidebar-section-children"><a href="Draw.FontImage.html">FontImage</a></div><div class="sidebar-section-children"><a href="Draw.TextureInfo.html">TextureInfo</a></div><div class="sidebar-section-children"><a href="Draw.TileInfo.html">TileInfo</a></div><div class="sidebar-section-children"><a href="Engine.Color.html">Color</a></div><div class="sidebar-section-children"><a href="Engine.EngineObject.html">EngineObject</a></div><div class="sidebar-section-children"><a href="Engine.Particle.html">Particle</a></div><div class="sidebar-section-children"><a href="Engine.ParticleEmitter.html">ParticleEmitter</a></div><div class="sidebar-section-children"><a href="Engine.RandomGenerator.html">RandomGenerator</a></div><div class="sidebar-section-children"><a href="Engine.Timer.html">Timer</a></div><div class="sidebar-section-children"><a href="Engine.Vector2.html">Vector2</a></div><div class="sidebar-section-children"><a href="Medals.Medal.html">Medal</a></div><div class="sidebar-section-children"><a href="Newgrounds.NewgroundsMedal.html">NewgroundsMedal</a></div><div class="sidebar-section-children"><a href="Newgrounds.NewgroundsPlugin.html">NewgroundsPlugin</a></div><div class="sidebar-section-children"><a href="PostProcess.PostProcessPlugin.html">PostProcessPlugin</a></div><div class="sidebar-section-children"><a href="TileLayers.Box2dTileLayer.html">Box2dTileLayer</a></div><div class="sidebar-section-children"><a href="TileLayers.CanvasLayer.html">CanvasLayer</a></div><div class="sidebar-section-children"><a href="TileLayers.TileCollisionLayer.html">TileCollisionLayer</a></div><div class="sidebar-section-children"><a href="TileLayers.TileLayer.html">TileLayer</a></div><div class="sidebar-section-children"><a href="TileLayers.TileLayerData.html">TileLayerData</a></div><div class="sidebar-section-children"><a href="UISystem.UIButton.html">UIButton</a></div><div class="sidebar-section-children"><a href="UISystem.UICheckbox.html">UICheckbox</a></div><div class="sidebar-section-children"><a href="UISystem.UIObject.html">UIObject</a></div><div class="sidebar-section-children"><a href="UISystem.UIScrollbar.html">UIScrollbar</a></div><div class="sidebar-section-children"><a href="UISystem.UISystemPlugin.html">UISystemPlugin</a></div><div class="sidebar-section-children"><a href="UISystem.UIText.html">UIText</a></div><div class="sidebar-section-children"><a href="UISystem.UITile.html">UITile</a></div><div class="sidebar-section-children"><a href="UISystem.UIVideo.html">UIVideo</a></div><div class="sidebar-section-children"><a href="ZzFXM.ZzFXMusic.html">ZzFXMusic</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-namespaces"><div>Namespaces</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="Audio.html">Audio</a></div><div class="sidebar-section-children"><a href="Box2D.html">Box2D</a></div><div class="sidebar-section-children"><a href="Debug.html">Debug</a></div><div class="sidebar-section-children"><a href="Draw.html">Draw</a></div><div class="sidebar-section-children"><a href="DrawUtilities.html">DrawUtilities</a></div><div class="sidebar-section-children"><a href="Engine.html">Engine</a></div><div class="sidebar-section-children"><a href="Input.html">Input</a></div><div class="sidebar-section-children"><a href="Math.html">Math</a></div><div class="sidebar-section-children"><a href="Medals.html">Medals</a></div><div class="sidebar-section-children"><a href="Newgrounds.html">Newgrounds</a></div><div class="sidebar-section-children"><a href="PostProcess.html">PostProcess</a></div><div class="sidebar-section-children"><a href="Random.html">Random</a></div><div class="sidebar-section-children"><a href="Settings.html">Settings</a></div><div class="sidebar-section-children"><a href="TileLayers.html">TileLayers</a></div><div class="sidebar-section-children"><a href="UISystem.html">UISystem</a></div><div class="sidebar-section-children"><a href="Utilities.html">Utilities</a></div><div class="sidebar-section-children"><a href="WebGL.html">WebGL</a></div><div class="sidebar-section-children"><a href="ZzFXM.html">ZzFXM</a></div></div></div><div class="mobile-navbar-actions"><div class="navbar-right-item"><button class="icon-button search-button" aria-label="open-search"><svg><use xlink:href="#search-icon"></use></svg></button></div><div class="navbar-right-item"><button class="icon-button theme-toggle" aria-label="toggle-theme"><svg><use class="theme-svg-use" xlink:href="#light-theme-icon"></use></svg></button></div><div class="navbar-right-item"><button class="icon-button font-size" aria-label="change-font-size"><svg><use xlink:href="#font-size-icon"></use></svg></button></div></div></div></div><script type="text/javascript" src="scripts/core.min.js"></script><script src="scripts/search.min.js" defer="defer"></script><script src="scripts/third-party/fuse.js" defer="defer"></script><script type="text/javascript">var tocbotInstance=tocbot.init({tocSelector:"#eed4d2a0bfd64539bb9df78095dec881",contentSelector:".main-content",headingSelector:"h1, h2, h3",hasInnerContainers:!0,scrollContainer:".main-content",headingsOffset:130,onClick:bringLinkToView})</script></body></html>